Information handling system data center bridging features with defined application environments

ABSTRACT

Information handling system network traffic is managed by populating a DCBX client framework with application network parameters associated with predetermined applications. Network devices, such as information handling system clients and servers, retrieve a TLV from a switch to obtain application network parameters for an application and apply the parameters so that the application executing on the device tags network communications with the associated parameters, such as bandwidth, loss less behavior, priority, latency, through put and CPU utilization.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates in general to the field of informationhandling system networking, and more particularly to a system and methodfor information handling system data center bridging features withdefined application environments.

2. Description of the Related Art

As the value and use of information continues to increase, individualsand businesses seek additional ways to process and store information.One option available to users is information handling systems. Aninformation handling system generally processes, compiles, stores,and/or communicates information or data for business, personal, or otherpurposes thereby allowing users to take advantage of the value of theinformation. Because technology and information handling needs andrequirements vary between different users or applications, informationhandling systems may also vary regarding what information is handled,how the information is handled, how much information is processed,stored, or communicated, and how quickly and efficiently the informationmay be processed, stored, or communicated. The variations in informationhandling systems allow for information handling systems to be general orconfigured for a specific user or specific use such as financialtransaction processing, airline reservations, enterprise data storage,or global communications. In addition, information handling systems mayinclude a variety of hardware and software components that may beconfigured to process, store, and communicate information and mayinclude one or more computer systems, data storage systems, andnetworking systems.

Information handling system usefulness has grown as networkingcapabilities have improved and allowed ready remote access toinformation. One example of improved networking capabilities is thefaster speeds employed by more recent Ethernet networks compared withearly versions of Ethernet, which operated at 10 Mbs or less. Bycomparison, the information technology industry is now moving towards 10GE Ethernet. With these increased Ethernet networking speeds, interesthas arisen to develop bandwidth sharing among multiple traffic typesacross an Ethernet link. A proposed IEEE 802.1 standard called DataCenter Bridging (DCB) offers convergence of multiple types of traffic onEthernet, such as by enabling local area network (LAN), storage areanetwork (SAN) and IPC traffic to share bandwidth of a 10 G link withimproved congestion management and quality of service. For example theDCB standard allows a network administrator to configure parameters foreach type of traffic sent across a network, such as parameters forpriority, bandwidth, flow control and end-to-end congestion management.Configuration of parameters is managed by a standardized protocol knownas the DCB Capability Exchange Protocol (DCBX). The DCBX standardenables an administrator to centrally configure parameters on a networkswitch. Network devices, such as servers, switches and storage, exchangeparameters input at a switch using DCBX Type-Length-Value Pairs (TLVs)and end stations, such as client information handling systems, inheritconfigurations from the switch.

One disadvantage of the DCB specification is that TLVs are designed forFibre Channel over Ethernet (FCoE) and iSCSI traffic by allowingadministrators to centrally associate DCB parameters with Ethertype andTCP socket number. The DCB specification does not currently allowcentralized configuration of other types of traffic. However, a varietyof applications run on client information handling systems bycommunicating information over networks. One example is the use ofvirtual machines, which use a hypervisor during VMotion migration ofvirtual machines between server and client information handling systems.Another example is e-mail traffic and database traffic, which ofteninclude varying degrees of importance. Another example is managementapplications that manage various aspects of a network and typically havea high priority relative to other applications. Often, DCB featuresremain unavailable for a particular application unless the applicationuses an industry standard UDP or TCP socket number.

SUMMARY OF THE INVENTION

Therefore a need has arisen for a system and method which allows networkfeatures enabled through network switches for applications executing onnetwork devices.

In accordance with the present invention, a system and method areprovided which substantially reduce the disadvantages and problemsassociated with previous methods and systems for supporting networkfeatures through network switches. Application network parametersassociated with an application are deployed from a network switch tonetwork devices to define management of communication of informationassociated with an application through the network.

More specifically, an application traffic configuration module deploysapplication network parameters to a DCB configuration table in a networkswitch. For example, a network switch exchanges these configurationparameters with the end station running applications via DCBX protocoland TLVS. DCBX TLV is stored on a switch with a modified format thatdefines network management parameters for one or more predeterminedapplications. Upon detection of an interface of the switch with thenetwork, an application traffic manager, such as a DCBX clientframework, retrieves the TLV and identifies an application associatedwith the TLV and application network parameters included for theapplication in the TLV. The identified application applies the networkparameters to communicate information associated with the applicationthrough the network according to the parameters. For example, a pluginoperating on the application applies the application network parametersto modify the network stack used to communicate information associatedwith the application, such as through an operating system API.

The present invention provides a number of important technicaladvantages. One example of an important technical advantage is that DCBfeatures are enabled for any application that executes on a networkdevice, independent of whether the application executes directly over L2Ethernet, over an L4 socket, uses RDMA or uses a proprietary protocol.Network management is supported for environments where applicationscannot be identified by a predefined Ethertype or reserved socketnumber. Management of network traffic associated with predeterminedapplications is accomplished within an existing DCBX client framework byadding an extension to a TLV that identifies the application.Application based network management through a DCBX client frameworkenables priority and loss less behavior for virtual machine operations,such as hypervisor traffic during VMotion; priority and guaranteedbandwidth for e-mail and database traffic; priority and unlimitedbandwidth for network management traffic; and DCB features configuredfor proprietary protocols, for node-to-node traffic in clustered storageor clustered applications for node-to-node metadata update traffic suchas IPC traffic in storage devices, and for IPC messages in a distributedapplication.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention may be better understood, and its numerousobjects, features and advantages made apparent to those skilled in theart by referencing the accompanying drawings. The use of the samereference number throughout the several figures designates a like orsimilar element.

FIG. 1 depicts a block diagram of a system that manages network trafficassociated with applications executing on a network device; and

FIG. 2 depicts an example of a modified TLV frame with information thatextends DCB functionality to applications; and

FIG. 3 depicts a flow diagram of a process for distributing anapplication specific TLV to a network.

DETAILED DESCRIPTION

A network architecture manages network information traffic associatedwith an application executing on a network device, such as aninformation handling system. For purposes of this disclosure, aninformation handling system may include any instrumentality or aggregateof instrumentalities operable to compute, classify, process, transmit,receive, retrieve, originate, switch, store, display, manifest, detect,record, reproduce, handle, or utilize any form of information,intelligence, or data for business, scientific, control, or otherpurposes. For example, an information handling system may be a personalcomputer, a network storage device, or any other suitable device and mayvary in size, shape, performance, functionality, and price. Theinformation handling system may include random access memory (RAM), oneor more processing resources such as a central processing unit (CPU) orhardware or software control logic, ROM, and/or other types ofnonvolatile memory. Additional components of the information handlingsystem may include one or more disk drives, one or more network portsfor communicating with external devices as well as various input andoutput (I/O) devices, such as a keyboard, a mouse, and a video display.The information handling system may also include one or more busesoperable to transmit communications between the various hardwarecomponents.

Referring now to FIG. 1, a block diagram depicts a system that managesnetwork traffic associated with applications executing on a networkdevice. A network 10 communicates information between network devicesusing a defined network architecture, such as Ethernet. Network 10includes plural devices having processing components that processinformation, such as processors that execute applications. For example,a server information handling system 12 executes instructions to performserver functions, such as e-mail, storage or Web page hosting. A clientinformation handling system 14 executes instructions to perform clientfunctions, such as word processing and data retrieval for presentationto an end user. A switch 16 switches traffic between network devicesbased upon information in the traffic, such as an Ethernet switch thatdirects traffic based upon packet header information. Switch 16 includesstorage, such as non-volatile memory, and a processor that executesinstructions, such as firmware instructions maintained in thenon-volatile storage. In one embodiment, network 10 is a 10 GE Ethernetnetwork that shares link bandwidth according to the IEEE 802.1 DataCenter Bridging Standard.

In order to configure network parameters for information traffic sentthrough network 10 based upon the application associated with theinformation, an application traffic configuration module 18 interfacesthrough network 10 with a network parameters module 20 executing onswitch 16 and populates an application traffic configuration table 22with application network parameters for predetermined applications. Forexample, application traffic configuration table 22 is a DCB CapabilityExchange Protocol (DCBX) table modified to accept application networkparameters for predetermined applications. Application networkparameters include priority associated with information of anapplication, bandwidth associated with information of an applicationprovided by associating priorities with priority groups and allocatingguaranteed bandwidth for each priority group, flow control associatedwith information of an application by using lossless versus traditionalpacket-drop Ethernet behavior on congestion, and end-to-end congestionmanagement of information associated with an application. Applicationnetwork parameters are centrally configured by storage of theapplication network parameters on application traffic configurationtable 22 of switch 16 and then deployed to network devices usingmodified DCBX Type-Length-Value (TLV) pairs communicated from switch 16to modules executing on the devices. In one embodiment, applicationtraffic configuration module 18 organizes network parameters into asprofiles that are assignable to applications. For example, a profilemight include three predetermined parameters of latency, throughput andCPU utilization, with each parameter assigned a value of high, medium orlow. To deploy network management having desired profile parameters, thepredetermined profile is assigned to the application in the applicationtraffic configuration table.

In operation, management of network information associated with anapplication executing on a network device is initiated upon detection ofdeployment of application traffic configuration table 22, such as oninitial power up of switch 16 or an indication from switch 16 that table22 has changed. An application traffic manager 24 executing on serverinformation handling system 12, such as a plugin executing inconjunction with operating system 26 or a hypervisor or applicationexecuting on dedicated hardware, receives a TLV from switch 16 thatcommunicates application network parameters from application trafficconfiguration table 22. Application traffic manager 24 parses the TLV todetermine the application 28 associated with the TLV and providestagging information to an application plugin 30, which uses the tagginginformation to tag packets communicated by the application 28 throughnetwork 10. Thus, application 28 communicates network informationthrough network 10 such that all traffic from application 28 is taggedwith the priority specified in the TLV. The network stack on serverinformation handling system 12 tags all the traffic originated byapplication 28.

Application 28 enhances network management of network informationtraffic by enhancing a DCB framework to manage information independentof whether an application runs directly over an L2 Ethernet or an L4socket interface. Management for traffic associated with a predeterminedapplication includes priority, flow control and bandwidth reservationparameters. One example of such an application is hypervisor tohypervisor traffic during VMotion that provides high priority and lossless behavior during virtual machine migration. Another example is ahigh priority and guaranteed bandwidth for e-mail and database traffic.In one embodiment, network management functions receive high priorityand unlimited bandwidth for specific traffic so that network managerscan perform network maintenance quickly even during times of heavynetwork use. Application specific DCB features are available even whereindustry standard UDP/TCP socket numbers are not used, such as withproprietary protocols or RDMA are used. In one example, DCB features areavailable for high bandwidth node-to-node traffic in clustered storageor clustered applications, such as Equallogic storage. High priority andmaximum bandwidth are configurable for node-to-node metadata updatetraffic, such as IPC traffic in Equallogic storage.

Referring now to FIG. 2, an example of a modified TLV frame is depictedwith information that extends DCB functionality to applications. AnEthernet setup frame 32 includes a DCBX LLDP PDU 34 that has TLV headers36 with an information portion 38. Information portion 38 is modified toinclude application network parameters 40 that define how informationassociated with the identified application is communicated through anetwork. The frame format depicted by FIG. 2 allows a DCB clientframework to configure DCB features for any application defined withinthe frame. Based upon the application name and priority informationassociated with the application name, information on the networkassociated with the application is managed to have a priorityestablished through TLV's stored on a switch and distributed to thenetwork. In the example depicted by FIG. 2, the application namecombines a company domain name and application name to guarantee aunique world wide name.

Referring now to FIG. 3, a flow diagram depicts a process fordistributing an application specific TLV to a network. The processbegins at step 42 with detection of an interface of a new or modifiedswitch to a network by an application traffic manager, such as amodified DCBX client framework. At step 44, the application trafficmanager retrieves TLVs from the switch, including one or more TLVshaving a modified information section that defines network parametersassociated with an application. At step 46, the application manager 24calls registered application traffic plugins to identify a plugin thatclaims each application specific TLV. The application traffic pluginassociated with the application of the TLV processes the applicationnetwork parameter values of the TLV to configure its associateapplication and underlying network stack to manage network trafficassociated with the application according to the TLV. For example,operating system APIs tag application traffic using the priorityindicated by the TLV.

Although the present invention has been described in detail, it shouldbe understood that various changes, substitutions and alterations can bemade hereto without departing from the spirit and scope of the inventionas defined by the appended claims.

What is claimed is:
 1. A system for managing information traffic througha network, the network having plural devices, the system comprising: anapplication traffic configuration table stored on a switch and havingapplication network parameters associated with an application; a networkparameters module executing on the switch and operable to communicatethe application network parameters through to one or more devices of thenetwork; an application traffic manager executing on a device of thenetwork and operable to receive the application network parameters,identify the associated application and configure the application to tagEthernet packets having information traffic of the application accordingto the application network parameters; and a virtual machine managerapplication executing on a device of the network, the virtual machinemanager application operable to coordinate tagging of all Ethernetpackets associated with the virtual machine manager applicationaccording to the application network parameters and further operable tomigrate virtual machines between network devices, the applicationnetwork parameters comprising a loss less behavior for virtual machinemigration of information associated with the virtual machine managerapplication.
 2. A method for managing information traffic through anetwork having plural devices, the method comprising: detectingconnection of a switch to the network; retrieving application networkparameters stored on the switch to a network device interfaced with theswitch; determining at the network device an application associated withthe application network parameters; processing the application networkparameters to configure the application to apply the application networkparameters to identify information communicated by the applicationthrough the network as Ethernet packets having a tag with theapplication network parameters; tagging Ethernet packets of networkinformation associated with the application according to the applicationnetwork parameters; and communicating the network information throughthe network according to the tagging; wherein the application comprisesa virtual machine manager, the application network parameters comprisinga loss less behavior for virtual machine migration informationassociated with the virtual machine manager, and wherein communicatingthe network information through the network according to the taggingfurther comprises migrating virtual machines between network devices.